// 大事件 store 空间名称 Ditem
import axios from '@/project/staggerer/Dsrc/main.js'
export default {
  // 开启命名空间
  namespaced: true,
  // 准备 state 存储数据
  state: () => ({
    // 注册成功后跳转到登录的 dom
    elet: '',
    // 用户登录成功后得到的 token
    token: '',
    // 定义用户信息对象
    userinfo: {}
  }),
  // 准备 actions 用于相应组件中的动作
  actions: {
    // 定义初始化用户基本信息的 action 函数
    async initUserInfo(context) {
      const { data: res } = await axios.get('/my/userinfo', {
        headers: {
          Authorization: context.state.token
        }
      })
      //
      if (res.code == 0) context.commit('updateUserInfo', res.data)
    }
  },
  // 准备 mutations 用于操作数据
  mutations: {
    // 更新 token
    updatedToken(state, newToken) {
      state.token = newToken
    },
    // 更新用户信息
    updateUserInfo(state, info) {
      state.userinfo = info
    },

    Delement(state, value) {
      state.elet = value
    }
  },
  // 准备 getters 用于计算数据
  getters: {}
}
